WORST_CASE(?,O(n^2)) Solution: --------- "#0" :: [] -(0)-> "A"(0, 0) "#EQ" :: [] -(0)-> "A"(0, 0) "#EQ" :: [] -(0)-> "A"(14, 14) "#GT" :: [] -(0)-> "A"(0, 0) "#GT" :: [] -(0)-> "A"(15, 15) "#GT" :: [] -(0)-> "A"(14, 14) "#LT" :: [] -(0)-> "A"(0, 0) "#LT" :: [] -(0)-> "A"(14, 14) "#cklt" :: ["A"(0, 0)] -(0)-> "A"(14, 14) "#compare" :: ["A"(0, 0) x "A"(0, 0)] -(0)-> "A"(14, 14) "#false" :: [] -(0)-> "A"(0, 0) "#false" :: [] -(0)-> "A"(14, 14) "#less" :: ["A"(0, 0) x "A"(0, 0)] -(1)-> "A"(0, 0) "#neg" :: ["A"(0, 0)] -(0)-> "A"(0, 0) "#pos" :: ["A"(0, 0)] -(0)-> "A"(0, 0) "#s" :: ["A"(0, 0)] -(0)-> "A"(0, 0) "#true" :: [] -(0)-> "A"(0, 0) "#true" :: [] -(0)-> "A"(14, 14) "::" :: ["A"(0, 0) x "A"(12, 7)] -(5)-> "A"(5, 7) "::" :: ["A"(0, 0) x "A"(14, 7)] -(7)-> "A"(7, 7) "::" :: ["A"(0, 0) x "A"(15, 15)] -(0)-> "A"(0, 15) "::" :: ["A"(0, 0) x "A"(7, 7)] -(0)-> "A"(0, 7) "::" :: ["A"(0, 0) x "A"(0, 0)] -(0)-> "A"(0, 0) "findMin" :: ["A"(12, 7)] -(4)-> "A"(7, 7) "findMin#1" :: ["A"(5, 7)] -(3)-> "A"(0, 7) "findMin#2" :: ["A"(7, 7) x "A"(0, 0)] -(3)-> "A"(0, 7) "findMin#3" :: ["A"(0, 0) x "A"(0, 0) x "A"(0, 0) x "A"(14, 7)] -(8)-> "A"(0, 7) "minSort" :: ["A"(14, 7)] -(6)-> "A"(0, 0) "minSort#1" :: ["A"(7, 7)] -(1)-> "A"(0, 0) "nil" :: [] -(0)-> "A"(5, 7) "nil" :: [] -(0)-> "A"(7, 7) "nil" :: [] -(0)-> "A"(15, 15) "nil" :: [] -(0)-> "A"(14, 14) Cost Free Signatures: --------------------- "#0" :: [] -(0)-> "A"_cf(0, 0) "#EQ" :: [] -(0)-> "A"_cf(0, 0) "#EQ" :: [] -(0)-> "A"_cf(14, 14) "#GT" :: [] -(0)-> "A"_cf(0, 0) "#GT" :: [] -(0)-> "A"_cf(14, 14) "#LT" :: [] -(0)-> "A"_cf(0, 0) "#LT" :: [] -(0)-> "A"_cf(14, 14) "#LT" :: [] -(0)-> "A"_cf(0, 15) "#cklt" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(12, 14) "#cklt" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#compare" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 14) "#compare" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#false" :: [] -(0)-> "A"_cf(0, 0) "#false" :: [] -(0)-> "A"_cf(14, 14) "#false" :: [] -(0)-> "A"_cf(13, 15) "#less" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(12, 0) "#less" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#neg" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#pos" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#s" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "#true" :: [] -(0)-> "A"_cf(0, 0) "#true" :: [] -(0)-> "A"_cf(13, 15) "::" :: ["A"_cf(0, 0) x "A"_cf(7, 0)] -(7)-> "A"_cf(7, 0) "::" :: ["A"_cf(0, 0) x "A"_cf(15, 8)] -(7)-> "A"_cf(7, 8) "::" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "findMin" :: ["A"_cf(7, 0)] -(0)-> "A"_cf(7, 0) "findMin" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "findMin#1" :: ["A"_cf(7, 0)] -(0)-> "A"_cf(7, 0) "findMin#1" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "findMin#2" :: ["A"_cf(7, 0) x "A"_cf(0, 0)] -(7)-> "A"_cf(7, 0) "findMin#2" :: ["A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "findMin#3" :: ["A"_cf(0, 0) x "A"_cf(0, 0) x "A"_cf(0, 0) x "A"_cf(7, 0)] -(14)-> "A"_cf(7, 0) "findMin#3" :: ["A"_cf(0, 0) x "A"_cf(0, 0) x "A"_cf(0, 0) x "A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "minSort" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "minSort#1" :: ["A"_cf(0, 0)] -(0)-> "A"_cf(0, 0) "nil" :: [] -(0)-> "A"_cf(7, 0) "nil" :: [] -(0)-> "A"_cf(15, 14) "nil" :: [] -(0)-> "A"_cf(12, 15) "nil" :: [] -(0)-> "A"_cf(0, 0) Base Constructors: ------------------ "\"#0\"_A" :: [] -(0)-> "A"(1, 0) "\"#0\"_A" :: [] -(0)-> "A"(0, 1) "\"#EQ\"_A" :: [] -(0)-> "A"(1, 0) "\"#EQ\"_A" :: [] -(0)-> "A"(0, 1) "\"#GT\"_A" :: [] -(0)-> "A"(1, 0) "\"#GT\"_A" :: [] -(0)-> "A"(0, 1) "\"#LT\"_A" :: [] -(0)-> "A"(1, 0) "\"#LT\"_A" :: [] -(0)-> "A"(0, 1) "\"#false\"_A" :: [] -(0)-> "A"(1, 0) "\"#false\"_A" :: [] -(0)-> "A"(0, 1) "\"#neg\"_A" :: ["A"(0, 0)] -(1)-> "A"(1, 0) "\"#neg\"_A" :: ["A"(0, 0)] -(0)-> "A"(0, 1) "\"#pos\"_A" :: ["A"(0, 0)] -(1)-> "A"(1, 0) "\"#pos\"_A" :: ["A"(0, 0)] -(0)-> "A"(0, 1) "\"#s\"_A" :: ["A"(0, 0)] -(0)-> "A"(1, 0) "\"#s\"_A" :: ["A"(0, 0)] -(0)-> "A"(0, 1) "\"#true\"_A" :: [] -(0)-> "A"(1, 0) "\"#true\"_A" :: [] -(0)-> "A"(0, 1) "\"::\"_A" :: ["A"(0, 0) x "A"(1, 0)] -(1)-> "A"(1, 0) "\"::\"_A" :: ["A"(0, 0) x "A"(1, 1)] -(0)-> "A"(0, 1) "\"nil\"_A" :: [] -(0)-> "A"(1, 0) "\"nil\"_A" :: [] -(0)-> "A"(0, 1)